/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */
package br.com.tarifador.controller;

import br.com.tarifador.dao.TarifadorDao;
import br.com.tarifador.model.GrupoDeTronco;
import java.util.List;

/**
 *
 * @author charles
 */
public class GrupoDeTroncoRN {

    private TarifadorDao<GrupoDeTronco> dao;
    private GrupoDeTronco troncoGrupo = new GrupoDeTronco();
    private String messagemCount;

    public boolean salvaGrupoDeTronco() {
        dao = new TarifadorDao<GrupoDeTronco>(GrupoDeTronco.class);
        boolean valida = false;
        if (troncoGrupo != null) {
            valida = dao.save(troncoGrupo);
            countGrupoDeTronco();
            limparCampos();
        }
        return valida;
    }

    public boolean updateGrupoDeTronco(GrupoDeTronco idGrupoDeTronco) {
        dao = new TarifadorDao<GrupoDeTronco>(GrupoDeTronco.class);
        boolean valida = false;
        if (troncoGrupo != null) {
            troncoGrupo.setId(idGrupoDeTronco.getId());
            valida = dao.update(troncoGrupo);
        }
        return valida;
    }

    public void limparCampos() {
        this.troncoGrupo.setDescricao("");
    }

    public String countGrupoDeTronco() {
        dao = new TarifadorDao<GrupoDeTronco>(GrupoDeTronco.class);
        Long valor = dao.countAllObject();
        return this.messagemCount = valor.toString() + " Grupos de linhas cadastrados.";
    }

    public boolean deletaGrupoDeTronco(Long idGrupoDeTronco) {
        dao = new TarifadorDao<GrupoDeTronco>(GrupoDeTronco.class);
        boolean valida = false;
        if (idGrupoDeTronco != null) {
            troncoGrupo.setId(idGrupoDeTronco);
            valida = dao.delete(troncoGrupo);
            countGrupoDeTronco();
        }
        return valida;
    }

    public List<GrupoDeTronco> listaDeGrupoDeTroncos() {
        dao = new TarifadorDao<GrupoDeTronco>(GrupoDeTronco.class);
        List<GrupoDeTronco> lista = dao.listall();
        return lista;
    }

    public String getMessagemCount() {
        return messagemCount;
    }

    public void setMessagemCount(String messagemCount) {
        this.messagemCount = messagemCount;
    }

  
    public GrupoDeTronco getTroncoGrupo() {
        return troncoGrupo;
    }

    public void setTroncoGrupo(GrupoDeTronco troncoGrupo) {
        this.troncoGrupo = troncoGrupo;
    }
}
